The present disclosure refers to video coding and compression techniques.
Many modern electronic devices employ video coding to support exchange of video. Video coding employs a variety coding techniques to exploit spatial and/or temporal redundancy in a video sequence and to achieve bandwidth compression. For example, spatial redundancy may be exploited by coding a first unit of image data from a first frame of an input video sequence differentially with respect to another, previously-coded unit of image data from the same frame. Temporal redundancy may be exploited by coding a unit of image data from a first frame differentially with respect to a unit of image data from another previously-coded frame. In either case, differentially coding the new unit of image data with respect to the previously-coded unit of image data (the new unit's “prediction reference”) achieves bandwidth compression. Additional coding operations, such as quantization and entropy coding, may be layered upon the predictive coding to achieve additional compression.
Coding image data with respect to prediction references has its consequences. For example, when operational errors such as packet loss arise, they can have consequences across multiple frames of video. For example, if a coded frame were designated as a prediction reference and were lost due to an operational error, not only would the prediction reference be lost but other frames, which refer to the lost prediction reference, could not be recovered. Accordingly, many video coding protocols employ error resiliency protocols to mitigate losses in the event of operational errors.